Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Java: Add FCALL command. #1543

Merged
merged 6 commits into from
Jun 11, 2024

Conversation

Yury-Fridlyand
Copy link
Collaborator

@Yury-Fridlyand Yury-Fridlyand commented Jun 7, 2024

Issue #, if available:
N/A

Description of changes:
https://redis.io/docs/latest/commands/fcall/

Some details
common interface functions

Object fcall(String function, String[] keys, String[] arguments);

standalone interface functions

Object fcall(String function);

cluster interface functions

Object fcall(String function);
Object fcall(String function, Route route);
Object fcall(String function, String[] arguments);
Object fcall(String function, String[] arguments, Route route);

This results in

standalone client functions

Object fcall(String function);
Object fcall(String function, String[] keys, String[] arguments);

cluster client functions

Object fcall(String function); // routed to a random node
Object fcall(String function, Route route); // routed according to the given route
Object fcall(String function, String[] arguments); // routed to a random node
Object fcall(String function, String[] arguments, Route route); // routed according to the given route
Object fcall(String function, String[] keys, String[] arguments); // routed according to the given keys

common transaction functions

Object fcall(String function, String[] keys, String[] arguments);
Object fcall(String function, String[] arguments);

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

* Add `FCALL` command.

Signed-off-by: Yury-Fridlyand <[email protected]>

* Optimize signature and UT.

Signed-off-by: Yury-Fridlyand <[email protected]>

* Fix IT.

Signed-off-by: Yury-Fridlyand <[email protected]>

* Address PR comments.

Signed-off-by: Yury-Fridlyand <[email protected]>

* Use RO funcs in IT.

Signed-off-by: Yury-Fridlyand <[email protected]>

* lua syntax fix.

Signed-off-by: Yury-Fridlyand <[email protected]>

* Address PR comments.

Signed-off-by: Yury-Fridlyand <[email protected]>

* More tests for the god of tests.

Signed-off-by: Yury-Fridlyand <[email protected]>

* Fix tests.

Signed-off-by: Yury-Fridlyand <[email protected]>

* I HATE YOU SPOTLESS

Signed-off-by: Yury-Fridlyand <[email protected]>

---------

Signed-off-by: Yury-Fridlyand <[email protected]>
Signed-off-by: Yury-Fridlyand <[email protected]>
@Yury-Fridlyand Yury-Fridlyand added the java issues and fixes related to the java client label Jun 7, 2024
@Yury-Fridlyand Yury-Fridlyand requested a review from a team as a code owner June 7, 2024 18:05
@Yury-Fridlyand Yury-Fridlyand merged commit 24fb145 into valkey-io:main Jun 11, 2024
46 checks passed
@Yury-Fridlyand Yury-Fridlyand deleted the java/integ_yuryf_FCALL branch June 11, 2024 21:22
cyip10 pushed a commit to Bit-Quill/valkey-glide that referenced this pull request Jun 24, 2024
* Java: Add `FCALL` command. (#307)

Signed-off-by: Yury-Fridlyand <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
java issues and fixes related to the java client
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants